RoomStore

abstract class RoomStore

Room management related interfaces, managing room creation, joining, leaving, scheduling and other operations.

Overview

RoomStore Manage room creation, joining, leaving, scheduling and other operations. Room management provides complete room lifecycle management, including instant rooms and scheduled rooms. RoomStore provides a comprehensive set of APIs to manage room-related operations.

Key Features

  • Instant Room:Supports creating and joining instant rooms

  • Scheduled Room:Supports scheduling rooms, modifying schedules, canceling schedules and other operations

  • Room Call:Supports calling users to join rooms, accepting/rejecting calls and other operations

  • State Management:Real-time tracking of current room status and scheduled room list

Tip: Room status updates are delivered through state publisher. Subscribe to it to receive real-time updates about current room and scheduled room list.

Topics

Getting Instance

Observing State and Events

Scheduled Room Operations

Instant Room Operations

Room Call Operations

See Also

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard
object Companion

Singleton object

Properties

Link copied to clipboard
abstract val state: RoomState

Room related state data provided by RoomStore

Functions

Link copied to clipboard
abstract fun acceptCall(roomID: String, completion: CompletionHandler?)

Accept call

Link copied to clipboard
abstract fun addRoomListener(listener: RoomListener?)

Add room event callback listener

Link copied to clipboard
abstract fun addScheduledAttendees(roomID: String, userIDList: List<String>, completion: CompletionHandler?)

Add scheduled attendees

Link copied to clipboard
abstract fun callUserToRoom(roomID: String, userIDList: List<String>, timeout: Int = 0, extensionInfo: String? = null, completion: CallUserToRoomCompletionHandler?)

Call user to join room

Link copied to clipboard
abstract fun cancelCall(roomID: String, userIDList: List<String>, completion: CompletionHandler?)

Cancel call

Link copied to clipboard
abstract fun cancelScheduledRoom(roomID: String, completion: CompletionHandler?)

Cancel scheduled room

Link copied to clipboard
abstract fun createAndJoinRoom(roomID: String, options: CreateRoomOptions, completion: CompletionHandler?)

Create and join room

Link copied to clipboard
abstract fun endRoom(completion: CompletionHandler?)

End room

Link copied to clipboard
abstract fun getPendingCalls(roomID: String, cursor: String?, completion: ListResultCompletionHandler<RoomCall>?)

Get pending calls list

Link copied to clipboard
abstract fun getRoomInfo(roomID: String, completion: GetRoomInfoCompletionHandler?)

Get room info

Link copied to clipboard
abstract fun getScheduledAttendees(roomID: String, cursor: String?, completion: ListResultCompletionHandler<RoomUser>?)

Get scheduled room attendees

Link copied to clipboard
abstract fun getScheduledRoomList(cursor: String?, completion: ListResultCompletionHandler<RoomInfo>?)

Get scheduled room list

Link copied to clipboard
abstract fun joinRoom(roomID: String, password: String? = "", completion: CompletionHandler?)

Join room

Link copied to clipboard
abstract fun leaveRoom(completion: CompletionHandler?)

Leave room

Link copied to clipboard
abstract fun rejectCall(roomID: String, reason: CallRejectionReason, completion: CompletionHandler?)

Reject call

Link copied to clipboard
abstract fun removeRoomListener(listener: RoomListener?)

Remove room event callback listener

Link copied to clipboard
abstract fun removeScheduledAttendees(roomID: String, userIDList: List<String>, completion: CompletionHandler?)

Remove scheduled attendees

Link copied to clipboard
abstract fun reset()

Reset room state

Link copied to clipboard
abstract fun scheduleRoom(roomID: String, options: ScheduleRoomOptions, completion: CompletionHandler?)

Schedule a room

Link copied to clipboard
abstract fun updateRoomInfo(roomID: String, options: UpdateRoomOptions, modifyFlagList: List<UpdateRoomOptions.ModifyFlag>, completion: CompletionHandler?)

Update room info

Link copied to clipboard
abstract fun updateScheduledRoom(roomID: String, options: ScheduleRoomOptions, modifyFlagList: List<ScheduleRoomOptions.ModifyFlag>, completion: CompletionHandler?)

Update scheduled room